package com.kmxd.ams.client.system.dto;

import io.swagger.v3.oas.annotations.media.Schema;
import java.io.Serializable;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
import lombok.Data;

/**
 * 系统参数
 *
 * @author admin
 * @since 2021-06-10
 */
@Data
public class SysConfigEditDTO implements Serializable {

  private static final long serialVersionUID = 1L;

  /** 主键ID */
  @Schema(description = "主键ID")
  private Long id;

  /** 配置类型，0：系统配置，1：预留 */
  @Schema(description = "配置类型，0：系统配置，1：预留")
  @NotNull(message = "配置类型，0：系统配置，1：预留不能为空")
  private Long type;

  /** 配置名称 */
  @Schema(description = "配置名称")
  @NotBlank(message = "配置名称不能为空")
  @Size(max = 100, message = "配置名称长度不能超过100个字符")
  private String name;

  /** 配置标识 */
  @Schema(description = "配置标识")
  @Size(max = 100, message = "配置标识长度不能超过100个字符")
  private String code;

  /** 配置内容 */
  @Schema(description = "配置内容")
  @Size(max = 1000, message = "配置内容长度不能超过100个字符")
  private String content;

  @Schema(description = "备注")
  private String remarks;

  /** 运维人员可见 0：不可见，1：可见 */
  @Schema(description = "运维人员可见 0：不可见，1：可见")
  private Integer status;

  /** 排序 */
  @Schema(description = "排序")
  @NotNull(message = "排序不能为空")
  private Integer sort;
}
